/*****************************************************************************/
/*                                                                           */
/*             --- CAEN RFID Srl - Computing Division ---                    */     
/*                                                                           */
/*                 CAENRFIDLibrary Visual C Revision History                 */     
/*                                                                           */
/* author: Andrea Iavazzo (support@caenrfid.com)                             */
/*                                                                           */
/*****************************************************************************/
 

  Description
  -----------

  This document is updated for every official release of the CAENRFIDLibrary
  and it contains various information specific to this software which can not 
  be found in the User's Manual, available together with the software or on the 
  CAEN RFID web site: www.caenrfid.com.

What's New in Rel. 5.0.0
-----------------------
   - Upgraded version for new SDK 5
   - Created x32 and x64 bit library version.
   - Added inventory functions with SubCommand options.
   - Added MaxQ,MinQ e numMinQ 
   - Added GetReaderInfoLevel, GetFirmwareReleaseLevel functions.
   - Added BlockProgramID_EPC_C1G2 function.
   - Added Set and GetReadPointPower function.
   - Added handling of phase and frequency in inventory functions.
   - Added Setter and Getter functions for InventoryCount, DwellTime, QuietTime.
   - Added CHILE Regulation
   - Changed description for SetDateTime functions.
   - Added Get and SetNetwork functions.
   - Added these airlink profile enumeration case:  DSB_ASK_FM0_TX160RX640,
      DSB_ASK_M2_TX160RX640, PR_ASK_FM0_TX66RX426
   - Added JAPAN_STD_T106_L, HONG KONG, INDONESIA, ISRAEL, RUSSIA 
     and NEW_ZELAND regulations
   - All flag parameters in *InventoryTag functions and 
     CAENRFID_EventInventoryTagArgs struct changed type from unsigned char to
     unsigned short to let the user to specify the new available flags like
     backskcattering frequency or phase.  

What's New in Rel. 4.8.0
------------------------
   - Changed a control in COM port address parsing, so the user 
     is able to input custom COM parameters (like baudrate)
   - Added BlockWriteTagData_EPC_C1G2 method.
    

What's New in Rel. 4.7.2
------------------------
   - Improved ForceAbort: now accepted timeout values should be higher
     500 ms
   - Refactorized all Inventory methods to allow the detection of EPC
     length of 0 word (No ID Tags). 

What's New in Rel. 4.7.1
------------------------
   - Refactoring MAX_CHAR_DESCRIPTION: it has been removed from iternal 
     IOLib.h header and defined in CAENRFIDLib.c internal source.
   - Refactoring internal strncopy of every logical source parameter using
     MAX_LOGICAL_SOURCE_NAME instead of MAX_CHAR_DESCRIPTION.
   - Removed a bug in a condition where ForceAbort might return 
     CAENRFID_StatusOK even if the AVP_RESULT is not reached.
   - Removed a bug in a condition where InventoryAbort doesn't return any
     result when abort command is not sent correctly.
   - Resolved some buffer leaks (command 'OutBuffer') in EventInventoryTag,
     ExtendedInventoryTag, InventoryAbort.
   - Removed unnecessary allocation of a buffer in ForceAbort.
   - Enforced TCP connection on CAENRFID_Init waiting the socket 
     for writing operation readiness, before return.
   - Refactoring TCP timeout to 1 seconds in the _ReceiveAVPPacket
     called by EventInventoryThread.

What's New in Rel. 4.7.0
------------------------
   - Upgraded to 4.7.0 for SDK upgrade.
   - Added ForceAbort method.
   - InventoryAbort and Disconnect now launch a timeout exception  when
     InventoryAbort itself doesn't return result code.
   - Added CMD_SAVE_SETTINGS command constant.
   - Added DoLogin and DoLogout methods.
   - Added Untraceable Gen2 command
   - Added Authenticate Gen2 command.
   - Deprecated Set/GetLBTMode and replaced with Set/GetFHSSMode.
   - Added GetBatteryLevel for reader that supports the auto battery level 
     detection (like qID-mini).
   - Added SL900A_SetLogLimits and GetMeasurementSetup methods.
   - Changed return packet length of SL900A_GetLogState from 10 to 9 bytes.
   - Changed the algorythm inside SL900A_GetMesurementSetup and GetLogState methods.
   - Changed the command code of SetAdminPassword_CMD from 0xaa to 0xac (172).
   - InventoryAbort now launch CAENRFIDException (communication error) when 
     abort is not sent by the reader within a certain timeout.
   - Added mamagement methods for Buffered Mode of qID-mini reader: 
     GetBufferedData, GetBufferSize, ClearBuffer.
   - Added three logical source paramenters for inventory with customized cycle
     sessions: inventory count, dwell time and quite time. Added the relative 
     getters and setters too.
   - Added Chile Regulation.


What's New in Rel. 4.6.0
------------------------
   - Added South Africa Regulation.
   - Added port targeting management in the Address parameter of the Connect.
     method when specified a TCP connection type.
   - Added PrintScreen method for printscreen-compatible reader.
   - Modified excepted string length in GetReaderInfo.
   - Deprecated the NXP_ResetReadProtect method with AccessPassword and unde
     precated the one with one password.




What's New in Rel. 4.6.0
------------------------
   - Added South Africa Regulation.
   - Added port targeting management in the Address parameter of the Connect.
     method when specified a TCP connection type.
   - Added PrintScreen method for printscreen-compatible reader.
   - Modified excepted string length in GetReaderInfo.
   - Deprecated the NXP_ResetReadProtect method with AccessPassword and unde
     precated the one with one password.


What's New in Rel. 4.5.2
------------------------
  - Added PERU Regulation.
  - Added support for MatchRFImpedance command. 

What's New in Rel. 4.5.1
------------------------
  - Recompiled under Windows XP to fix MSVCR80.DLL wrong loading. 

What's New in Rel. 4.5.0
------------------------
  - Upgraded to 4.5.0 for SDK upgrade.


What's New in Rel. 4.4.2
-------------------------
  - Added two JAPAN regulation STD106 e STD107.

What's New in Rel. 4.4.1
-------------------------
  -Fixed a bug on SetTIDLength input checking.
  -Added a memory bank enumeration on CAENRFIDTypes.h


What's New in Rel. 4.4.0
--------------------------
  -Correct a bug that creates deadlock on EventInventoryTag Event Thread when a 
   result code from abort was different from CAENRFID_StatusOK
  -Changed InventoryFlag XPC from 128 to 64
  -Upgrade to 4.4.0 for new SDK Release

What's New in Rel. 4.3.0
--------------------------
  -Complete Refactor of the TCP connection model.
  -CAENRFID_TagLockedError substitutes with CAENRFID_TagReadError (204).
  -EventInventoryTag now stop also on result codes different from CAENRFID_StatusOK.
  -Correct XPC bug on EventInventoryTag's Thread,when passing to the getFramedTag 
   the XPC uninitialized.
  -Now the getTimeStamp returns milliseconds too.
  -Now InventoryAbort correctly wait for inventory Thread to finish (within the timeout).
  -Correct a leak on the IOBuffer creation in _SendReaceiveAVPPacket in the getFramed
   (multi malloc without free).
  -Added an enum for the "Flag" argument in the *InventoryTag methods, to increase
   the easy of use of this parameter.
  -Added custom commands for IDS Chip.
  -Added custom commands for ORIDAO Chip
  -Added custom commands for EM4325 Chip.
  -Added a SetTIDLength and GetTIDLength methods to increase TID reading performance in
   the Inventory with "TID Reading" flag enabled.
  -Added the PC (2 bytes long) field in CAENRFIDTag and CAENRFIDNotify.
  -Changed the CAENRFIDTag parameter of NXP_EASAlarm with char * SourceName either open 
   and secure version.
  -Bug fixed custom command. No error are returned if no data at all
   (except for the AVP ResultCode) is returned from reader.

What's New in Rel. 4.2.1
--------------------------
  -Correct bug on ID message counter overflow control.

What's New in Rel. 4.2.0
--------------------------
  -Added CMD_SAVE_SETTINGS AVP'code for the new command(not implemented at now).

What's New in Rel. 4.1.0
  --------------------------
  -Correct Bug in TID manage in *InventoryTag methods,when TID length.
  -Added BRAZIL as new regulation
  -Added A828BT EventTrigger flag handling in EventInventoryTag method.
  -Added NXP_ChangeConfig (w/wo access password) methods.
  -Correct some memory leaks bug, during Inventory tags retrieval.
  -Correct EventInventoryTag thread. Now checks "rescod" to avoid potential infinte loop.
  -Correct InventoryAbort. Now it waits for EventInventoryThread Ending.
  -Added XPC field in RFID Tag and update all GetAVPPacket function.
  -Updated InventoryTag methods with the new XPC flag.

What's New in Rel. 4.0.0
  --------------------------
  -Code refactoring and overall bugfix job for SDK 4.0 release.

What's New in Rel. 3.9.0
  --------------------------
  -Added BankFilteredLockTag_EPC_C1G2
  -Added BankFilteredKillTag_EPC_C1G2
  -Added SecureBankFilteredReadTagData_EPC_C1G2
  -Added SecureBankFilteredWriteTagData_EPC_C1G2
  -Added SecureBankFilteredLockTag_EPC_C1G2

What's New in Rel. 3.8.0
  --------------------------
  -Added BankFilteredReadTagData_EPC_C1G2
  -Added BankFilteredWriteTagData_EPC_C1G2
  -added a parameter (MaskLen) to pass the byte length of the Mask.

What's New in Rel. 3.7.0
  --------------------------
  -Added BankFilteredFlagInventoryTag and BankFilteredInventoryTag.

What's New in Rel. 3.6.0
  --------------------------
  -Added LockBlockPermaLock function
  -Added ReadBlockPermaLock function

  What's New in Rel. 3.5.0
  --------------------------
  -Added SetAdminPassword replaced SetReaderOptions.

  What's New in Rel. 3.4.1
  --------------------------
  -Added support to serial port over COM9 in Connect function.
  -some minor bug fix.

  What's New in Rel. 3.4.0
  --------------------------
  -Extended CAENRFIDErrorCodes and modified CAENRFID_Query_C1G2 function.
  -Others bufgfix on TID, TIDLen and RSSI handling in internal function( getFramedTag ).
  -Deprecated BlockWrite and replaced with BlockWriteTag.
  
  What's New in Rel. 3.3.0
  --------------------------
  -added getBuffered function
  -Extended Regulation to CHINA,TAIWAN and SINGAPORE.
  -Creates Macro MX_SWREL_LENGTH, MAX_FWREL_LENGTH and MAX_MODEL_LENGTH
  -Added TID e TIDLen field in CAENRFIDTypes.h Tag e Notify typedef, and a 
   costant MAX_TID_SIZE of 64 byt( max declared for TID bank in EPC C1G2 prot.)
  -Added TID and rssi managmement in all CAENRFID_*InventoryTag().
  -Creates GetChannelStatus function and firmware command code. 
  -added enum CAENRFID_Bitrate and replaced Get\SetModulation with Get\SetBitrate functions.
  -Alignement of all code to .NET methods.
  What's New in Rel. 3.2.5
  --------------------------
  -first official emission in SDK 2.4.7 .
  

 
  How to get support
  ------------------

  Our Software Support Group is available for questions, support and any other 
  software related issue concerning CAEN RFID; for software support
  visit the page www.caen.it/rfid


